C++ 函数是程序的基本构建单元,用于封装可重复使用的代码块,实现特定任务。它能提高代码的可读性、复用性和维护性。一个完整的 C++ 程序至少包含一个函数——main(),它是程序的入口点。
一、函数的基本结构
一个函数由返回类型、函数名、参数列表和函数体组成,语法如下:
例如,定义一个求两数之和的函数:
调用方式为:int result = add(3, 5);。
二、函数的三大核心步骤
声明(Declaration):
告诉编译器函数的存在,通常放在 .h 文件或主函数之前。
示例:int add(int a, int b);
定义(Definition):
实现函数的具体逻辑,即写出函数体。
调用(Call):
在需要的地方使用函数名和实参来执行函数。
⚠️ 注意:若函数定义在 main() 之后,必须先声明再调用,否则会报错。
三、参数传递的三种方式
方式 说明 是否影响原值 值传递 将实参的副本传入函数 ❌ 不影响 引用传递 通过引用直接操作原变量 ✅ 影响 指针传递 传递变量地址,间接访问原值 ✅ 影响
✅ 推荐新手优先使用值传递,更安全直观。
四、返回值与多返回值技巧
普通函数只能返回一个值,但可通过以下方式“返回多个”:
使用 std::pair<int, int> 返回两个值
使用 std::tuple<int, double, string> 返回多个不同类型值
通过引用参数输出结果(如 void func(int& out1, double& out2))
定义结构体或类来封装复杂数据
C++17 起支持结构化绑定,可轻松解包元组:
五、高级特性简览
函数重载:同名函数根据参数不同实现不同逻辑。
默认参数:为参数提供默认值,调用时可省略。
内联函数(inline):建议编译器展开函数体以提升性能。
Lambda 表达式:匿名函数,常用于算法回调,如:
六、实用建议
函数应尽量职责单一,避免过长。
合理使用注释说明功能、参数和返回值。
尽量将常用功能模块化为独立函数,便于测试和复用。
关注我!!!
字体来源!!!